package com.mszlu.blog.service;

import com.mszlu.blog.dao.pojo.SysUser;
import com.mszlu.blog.vo.Result;
import com.mszlu.blog.vo.params.LoginParam;
import org.springframework.transaction.annotation.Transactional;

/**
 * @author linKe
 * 登录功能使用服务
 */
public interface LoginService {
    /**
     * 登录功能
     * @param loginParam    登录参数
     * @return  登录结果
     */
    Result login(LoginParam loginParam);

    /**
     * 检查token信息
     * @param token 凭证
     * @return  SysUser
     */
    SysUser checkToken(String token);

    /**
     * 退出登录 清除redis中的登录信息
     * @param token 凭证信息
     * @return  退出结果
     */
    Result logout(String token);

    /**
     * 注册
     * @param loginParam 注册参数
     * @return  结果
     */
    Result register(LoginParam loginParam);
}
